/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package grafos_nac20;

import excecoes.ArquivoInexistenteException;
import java.util.List;
import javax.swing.JOptionPane;

/**
 *
 * @author fillipe
 */
public class Grafos_NAC20 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        try {
            String meuRM = JOptionPane.showInputDialog("Insira seu RM");
            //String meuRM = "1";
            Grafo grafo = new Grafo(meuRM);
            grafo.montaTabela();
            grafo.percorrerPorProfundidade(meuRM);
            
            System.out.println("1) Caminhos encontrados");
            imprimeCaminhos(grafo);
            
            System.out.println();
            System.out.println();
            System.out.println("2 e 3) RM's contatados e não contatados e articulacoes");
            grafo.imprimeNosEncontrados();
            
            System.out.println();
            System.out.println();
            System.out.println("4) Niveis");
            System.out.println(grafo.percorrerPorNivel(meuRM));
            
        } catch (ArquivoInexistenteException ex) {
            System.out.println("Ocorreu um erro:");
            System.out.println(ex.getMessage());
        }
    }
    
    public static void imprimeCaminhos(Grafo grafo){
        for(List<String> caminho : grafo.getCaminhos()){
                System.out.println(caminho);
            }
    }
}
